import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 *
 *Clase que representa a un ostaculo tipo laser.
 * 
 * @author Cesar Delgado 
 * @version Mayo 2012
 */
public class Laser extends Obstaculo
{
    
    private int metrosI;
    /**
     * Constructor para crear un objeto Laser e indica en el numero
     * de metro en el que fue creado
     * @param m El numero de metro en el que fue creado
     */
    public Laser(int m)
    {
        ScrollWorld mundo = (ScrollWorld)getWorld(); 
        
        cont = 0;
        metrosI = m;
        imagen0 = new GreenfootImage("laser1.png");
        imagen1 = new GreenfootImage("laser2.png");
        imagen2 = new GreenfootImage("laser3.png");
        
        setImage(imagen0);
        super.cambiaActivo(false);
        
    }
    
    /**
     * Act - Hace lo que sea que Laser quiera hacer. Este metodo es llamado 
     * cuando el  boton "run" o "act" son presionados
     */
    public void act() 
    {
        // Add your action code here.
        ScrollWorld mundo = (ScrollWorld)getWorld();
        
        if(mundo.dimePause() == false && mundo.dimeFinJuego() == false)
        {
           
            
            
            if(mundo.metros()-metrosI == 10)
                mundo.laser1.play();
               
           
               
           if(mundo.metros()-metrosI > 10)
           {
              cont++;
              mundo.laser.play();
              
              if(cont == 2)
                 setImage(imagen1);
         
              if(cont == 4)
                 setImage(imagen2);
              
              if(cont == 6)
                 cont = 0;
           }
        
           if(mundo.metros()-metrosI == 35)
              mundo.removeObject(this);
        }    
    }
    
    public boolean activo()
    {
        if(mundo.metros()-metrosI == 10)
           {
               mundo.laser1.play();
               super.cambiaActivo(true);
           }
        return activo;
    }
}
